\name{QueryWithBounds2DF}
\alias{QueryWithBounds2DF}
%- Also NEED an '\alias' for EACH other topic documented here.
\title{
Query DatasetVector with Geographical scope, return to sp spatial data frame
}
\encoding{UTF-8}
\description{
根据地理范围进行矢量数据集查询，查询与指定的地理范围范围相交的对象，将结果转换为 sp 空间数据框返回，支持点、线和面数据集。
}
\usage{
QueryWithBounds2DF(obj, bounds, filter = "", order = "")
}
%- maybe also 'usage' for other objects documented here.
\arguments{
  \item{obj}{
  被查询的矢量数据集
}
  \item{bounds}{
  地理空间范围，可以使用\code{\link{matrix}}表示，matrix 的第一行表示地理空间范围的左上顶点坐标（x 和 y）, 第二行表示地理空间范围的右下顶点坐标（x 和 y）。如果使用 list 表示，则 list 元素分别为地理范围的左、上、右、下。当 bounds 为NULL时，默认使用被查询数据集的地理范围。
}
  \item{filter}{
查询所构建的 SQL 条件语句，即 SQL WHERE clause 语句。
}
  \item{order}{
对于SQL查询得到的记录集中的各记录，可以根据指 order 语句进行排序，并可以指定为升序排列或是降序排列，其中 asc 表示升序，desc 表示降序。例如“Order By SmID desc”。
}
}
\details{
%%  ~~ If necessary, more details than the description above ~~
}
\value{
 \enumerate{
\item{如果成功，被查询数据集是点数据集，则返回 SpatialPointsDataFrame 对象}
\item{如果成功，被查询数据集是线数据集，则返回 SpatialLinesDataFrame 对象}
\item{如果成功，被查询数据集是面数据集，则返回 SpatialPolygonsDataFrame 对象}
\item{如果失败，返回 NULL}
}
}
\references{
%% ~put references to the literature/web site here ~
}
\author{
%%  ~~who you are~~
}
\note{
%%  ~~further notes~~
}

%% ~Make other sections like Warning with \section{Warning }{....} ~

\seealso{
\code{\link{QueryWithBounds}}, \code{\link{Query}}, \code{\link{QueryWithGeometry2DF}}
}
\examples{

require(sp)
server <- system.file("/sampledata/ChangChun.udb", package="RSuperMap")
ds <- OpenDatasource(server, alias = "test", engine = "udb")

line.dt <- GetDataset(ds, "RoadLine2")
bounds <- matrix(nrow=2, ncol=2)
bounds[1,] <- c(3685.99996619522, -2874.43001821247)
bounds[2,] <- c(7557.17488835035, -3976.88126317717)

result <- QueryWithBounds2DF(line.dt, bounds)

bounds.l <- list(3685.99996619522, -2874.43001821247, 7557.17488835035, -3976.88126317717)
result.l <- QueryWithBounds2DF(line.dt, bounds.l)

bounds.c <- c(3685.99996619522, -2874.43001821247, 7557.17488835035, -3976.88126317717)
result.c <- QueryWithBounds2DF(line.dt, bounds= bounds.c, 
  filter = "SmID < 100", order = "Order By SmID desc")

CloseDatasource(ds)
}
% Add one or more standard keywords, see file 'KEYWORDS' in the
% R documentation directory.
\keyword{supermap}
\keyword{query}